home *** CD-ROM | disk | FTP | other *** search
/ Gekkan Dennou Club 147 / Gekkan Dennou Club - 2000.8 Vol. 147 (Japan).7z / Gekkan Dennou Club - 2000.8 Vol. 147 (Japan) (Track 1).bin / games / hexrev / crx / hexrev.h < prev    next >
C/C++ Source or Header  |  2000-07-07  |  2KB  |  90 lines

  1. /***************************************************
  2.  
  3.     hexrev.h : 六角リバーシゲームだよ
  4.  
  5.                 Copyright (C) 1997 by Makoto Hiroi
  6.  
  7. -CRX ver by 電魔団\shoeyu 2000
  8.  
  9.  
  10.     盤面の座標(1次元配列で表す)
  11.  
  12.              0 1 2 3 4 5
  13.             6  7  8  9  10  11  12
  14.           13  14  15  16  17  18  19  20
  15.         21  22  23  24  25  26  27  28  29
  16.       30  31  32  33  34  35  36  37  38  39
  17.     40  41  42  43  44  45  46  47  48  49  50
  18.       51  52  53  54  55  56  57  58  59  60
  19.         61  62  63  64  65  66  67  68  69
  20.           70  71  72  73  74  75  76  77
  21.             78  79  80  81  82  83  84
  22.               85  86  87  88  89  90
  23.  
  24. ****************************************************/
  25.  
  26. #include    <stdio.h>
  27. #include    <stdlib.h>
  28. #include    <time.h>
  29. #include    <limits.h>
  30. #include    <string.h>
  31. #include    <sys/dos.h>
  32. #include    <sys/iocs.h>
  33.  
  34. #define    TRUE    1
  35. #define    FALSE    0
  36.  
  37. #define    SIZE    91        /* 盤面の大きさ */
  38. #define    BLACK    0        /* 黒駒 */
  39. #define    WHITE    1        /* 白駒 */
  40. #define    FREE    2        /* 駒なし */
  41.  
  42. #define    C_RES    3        /* @@中心リザーブ */
  43.  
  44. #define    HUMAN    5        /* 人間側の手番 */
  45. #define    COM    6        /* コンピュータ側の手番 */
  46. #define    DIR    6        /* 駒を返す方向 */
  47.  
  48. #define    PASS    (-1)    /* パスした場合 */
  49. #define    START    (-2)    /* 対局をクリックした場合 */
  50.  
  51. #define    MAX_VALUE    100000
  52. #define    MIN_VALUE    (-100000)
  53. #define    NO_VALUE    INT_MAX
  54. #define    MAX_LIMIT   (MAX_VALUE + 100)
  55. #define    MIN_LIMIT   (MIN_VALUE - 100)
  56. #define    PUT_BLACK   1
  57. #define    PUT_WHITE   2
  58.  
  59. /* 盤面の状態を表す構造体 */
  60. typedef struct {
  61.     char    board[SIZE + 1];    /* 盤面(4 で割り切れる用にするため 1 を足す) */
  62.     int        white;                /* 白駒の数 */
  63.     int        black;                /* 黒駒の数 */
  64. } STATE;
  65.  
  66. /********** 関数定義 **********/
  67.  
  68. /* think.c */
  69. int getTurnNum();        /*@@*/
  70. void setBoard(int num,int p);    /*@@*/
  71. void    init_data(void);
  72. int        check_move(int piece);
  73. int        reverse_piece(int num, int piece, char *buffer );
  74. int        result_value(int flag);
  75. int        select_move(int turn, int level);
  76. int        get_postion(int x, int y);
  77.  
  78. /* graph.c */
  79. void    draw_piece(int num, int piece);
  80. void    print_level(void);
  81. void    print_move(void);
  82. void    init_screen(void);
  83. void    print_stones(void);
  84. /* reversi.c */
  85. void    wait(void);
  86. volatile void    quit(void);
  87.  
  88. /* end of file */
  89.  
  90.